home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / language / slperl.zoo / atarist / makefile.sm < prev    next >
Makefile  |  1992-07-02  |  9KB  |  458 lines

  1. # : Makefile.SH,v 9820Revision: 4.0.1.2 9820Date: 91/06/07 10:14:43 $
  2. #
  3. # $Log:    makefile.sm,v $
  4. # Revision 4.0.1.1  92/06/08  11:50:00  lwall
  5. # Initial revision
  6. # Revision 4.0.1.2  91/06/07  10:14:43  lwall
  7. # patch4: cflags now emits entire cc command except for the filename
  8. # patch4: alternate make programs are now semi-supported
  9. # patch4: uperl.o no longer tries to link in libraries prematurely
  10. # patch4: installperl now installs x2p stuff too
  11. # Revision 4.0.1.1  91/04/11  17:30:39  lwall
  12. # patch1: C flags are now settable on a per-file basis
  13. # Revision 4.0  91/03/20  00:58:54  lwall
  14. # 4.0 baseline.
  15.  
  16. CC = cgcc
  17. YACC = bison -y
  18. LDFLAGS = 
  19. CLDFLAGS = 
  20. SMALL = 
  21. LARGE =  
  22. mallocsrc = malloc.c
  23. mallocobj = malloc.o
  24. SLN = ln -s
  25.  
  26. libs = -lgdbm -lpml 
  27.  
  28. public = perl.ttp
  29.  
  30. # To use an alternate make, set  in config.sh.
  31. MAKE = make
  32.  
  33.  
  34. CCCMD = $(CC) -O2 -fomit-frame-pointer -fstrength-reduce -c -DMYMALLOC
  35.  
  36. private = 
  37.  
  38. scripts = 
  39.  
  40. manpages = perl.man h2ph.man
  41.  
  42. util = echo.ttp perlglob.ttp
  43.  
  44. sh = Makefile.SH makedepend.SH h2ph.SH
  45.  
  46. h1 = EXTERN.h INTERN.h arg.h array.h cmd.h config.h form.h handy.h
  47. h2 = hash.h perl.h regcomp.h regexp.h spat.h stab.h str.h util.h
  48.  
  49. h = $(h1) $(h2)
  50.  
  51. c1 = array.c cmd.c cons.c consarg.c doarg.c doio.c dolist.c dump.c
  52. c2 = eval.c form.c hash.c $(mallocsrc) perl.c regcomp.c regexec.c
  53. c3 = stab.c str.c toke.c util.c atarist.c usersub.c
  54.  
  55. c = $(c1) $(c2) $(c3)
  56.  
  57. obj1 = array.o cmd.o cons.o consarg.o doarg.o doio.o dolist.o dump.o
  58. obj2 = eval.o form.o hash.o $(mallocobj) perl.o regcomp.o regexec.o
  59. obj3 = stab.o str.o toke.o util.o atarist.o
  60.  
  61. obj = $(obj1) $(obj2) $(obj3)
  62.  
  63. lintflags = -hbvxac
  64.  
  65. # grrr
  66. SHELL = /bin/sh
  67.  
  68. .c.o:
  69.     $(CCCMD) $*.c
  70.  
  71. all: $(public)  $(util)
  72.  
  73. # This is the standard version that contains no "taint" checks and is
  74. # used for all scripts that aren't set-id or running under something set-id.
  75. # The $& notation is tells Sequent machines that it can do a parallel make,
  76. # and is harmless otherwise.
  77.  
  78. perl.ttp: perly.o $(obj) usersub.o
  79.     $(CC) $(LARGE) $(CLDFLAGS) $(obj) perly.o usersub.o $(libs) -o perl.ttp -v -s
  80.  
  81. echo.ttp: wildmat.o echo.c
  82.     $(CC) -O -mshort -fomit-frame-pointer -o echo.ttp \
  83.     echo.c wildmat.o -liio16 -s
  84.  
  85. perlglob.ttp: wildmat.o perlglob.c
  86.     $(CC) -O -mshort -fomit-frame-pointer -o perlglob.ttp \
  87.     perlglob.c wildmat.o -liio16 -s
  88.  
  89. wildmat.o: wildmat.c
  90.     $(CC) -O -mshort -fomit-frame-pointer -c wildmat.c
  91.  
  92. perly.h: perly.c
  93.     @ echo Dummy dependency for dumb parallel make
  94.     touch perly.h
  95.  
  96. perly.c: perly.y perly.fixer
  97.     @ echo 'Expect either' 29 shift/reduce and 59 reduce/reduce conflicts...
  98.     @ echo '           or' 27 shift/reduce and 61 reduce/reduce conflicts...
  99.     $(YACC) -d perly.y
  100.     sh ./perly.fixer y.tab.c perly.c
  101.     mv y.tab.h perly.h
  102.     echo 'extern YYSTYPE yylval;' >>perly.h
  103.  
  104. perly.o: perly.c perly.h $(h)
  105.     $(CCCMD) perly.c
  106.  
  107.  
  108. clean:
  109.     rm -f *.o 
  110.  
  111. realclean: clean
  112.     rm -f *.ttp report core
  113.     rm -f perly.c perly.h 
  114.  
  115. # The following lint has practically everything turned on.  Unfortunately,
  116. # you have to wade through a lot of mumbo jumbo that can't be suppressed.
  117. # If the source file has a /*NOSTRICT*/ somewhere, ignore the lint message
  118. # for that spot.
  119.  
  120. lint: perly.c $(c)
  121.     lint $(lintflags) $(defs) perly.c $(c) > perl.fuzz
  122.  
  123. depend: makedepend
  124.     - test -f perly.h || cp /dev/null perly.h
  125.     ./makedepend
  126.     - test -s perly.h || /bin/rm -f perly.h
  127.  
  128. test: perl
  129.     - cd t && chmod +x TEST */*.t
  130.     - cd t && (rm -f perl; $(SLN) ../perl .) && ./perl TEST </dev/tty
  131.  
  132. clist:
  133.     echo $(c) | tr ' ' '\012' >.clist
  134.  
  135. hlist:
  136.     echo $(h) | tr ' ' '\012' >.hlist
  137.  
  138. shlist:
  139.     echo $(sh) | tr ' ' '\012' >.shlist
  140.  
  141. # AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
  142. # If this runs make out of memory, delete /usr/include lines.
  143. array.o: EXTERN.h
  144. array.o: arg.h
  145. array.o: array.c
  146. array.o: array.h
  147. array.o: cmd.h
  148. array.o: config.h
  149. array.o: form.h
  150. array.o: handy.h
  151. array.o: hash.h
  152. array.o: perl.h
  153. array.o: regexp.h
  154. array.o: spat.h
  155. array.o: stab.h
  156. array.o: str.h
  157. array.o: util.h
  158. cmd.o: EXTERN.h
  159. cmd.o: arg.h
  160. cmd.o: array.h
  161. cmd.o: cmd.c
  162. cmd.o: cmd.h
  163. cmd.o: config.h
  164. cmd.o: form.h
  165. cmd.o: handy.h
  166. cmd.o: hash.h
  167. cmd.o: perl.h
  168. cmd.o: regexp.h
  169. cmd.o: spat.h
  170. cmd.o: stab.h
  171. cmd.o: str.h
  172. cmd.o: util.h
  173. cons.o: EXTERN.h
  174. cons.o: arg.h
  175. cons.o: array.h
  176. cons.o: cmd.h
  177. cons.o: config.h
  178. cons.o: cons.c
  179. cons.o: form.h
  180. cons.o: handy.h
  181. cons.o: hash.h
  182. cons.o: perl.h
  183. cons.o: perly.h
  184. cons.o: regexp.h
  185. cons.o: spat.h
  186. cons.o: stab.h
  187. cons.o: str.h
  188. cons.o: util.h
  189. consarg.o: EXTERN.h
  190. consarg.o: arg.h
  191. consarg.o: array.h
  192. consarg.o: cmd.h
  193. consarg.o: config.h
  194. consarg.o: consarg.c
  195. consarg.o: form.h
  196. consarg.o: handy.h
  197. consarg.o: hash.h
  198. consarg.o: perl.h
  199. consarg.o: regexp.h
  200. consarg.o: spat.h
  201. consarg.o: stab.h
  202. consarg.o: str.h
  203. consarg.o: util.h
  204. doarg.o: EXTERN.h
  205. doarg.o: arg.h
  206. doarg.o: array.h
  207. doarg.o: cmd.h
  208. doarg.o: config.h
  209. doarg.o: doarg.c
  210. doarg.o: form.h
  211. doarg.o: handy.h
  212. doarg.o: hash.h
  213. doarg.o: perl.h
  214. doarg.o: regexp.h
  215. doarg.o: spat.h
  216. doarg.o: stab.h
  217. doarg.o: str.h
  218. doarg.o: util.h
  219. doio.o: EXTERN.h
  220. doio.o: arg.h
  221. doio.o: array.h
  222. doio.o: cmd.h
  223. doio.o: config.h
  224. doio.o: doio.c
  225. doio.o: form.h
  226. doio.o: handy.h
  227. doio.o: hash.h
  228. doio.o: perl.h
  229. doio.o: regexp.h
  230. doio.o: spat.h
  231. doio.o: stab.h
  232. doio.o: str.h
  233. doio.o: util.h
  234. dolist.o: EXTERN.h
  235. dolist.o: arg.h
  236. dolist.o: array.h
  237. dolist.o: cmd.h
  238. dolist.o: config.h
  239. dolist.o: dolist.c
  240. dolist.o: form.h
  241. dolist.o: handy.h
  242. dolist.o: hash.h
  243. dolist.o: perl.h
  244. dolist.o: regexp.h
  245. dolist.o: spat.h
  246. dolist.o: stab.h
  247. dolist.o: str.h
  248. dolist.o: util.h
  249. dump.o: EXTERN.h
  250. dump.o: arg.h
  251. dump.o: array.h
  252. dump.o: cmd.h
  253. dump.o: config.h
  254. dump.o: dump.c
  255. dump.o: form.h
  256. dump.o: handy.h
  257. dump.o: hash.h
  258. dump.o: perl.h
  259. dump.o: regexp.h
  260. dump.o: spat.h
  261. dump.o: stab.h
  262. dump.o: str.h
  263. dump.o: util.h
  264. eval.o: EXTERN.h
  265. eval.o: arg.h
  266. eval.o: array.h
  267. eval.o: cmd.h
  268. eval.o: config.h
  269. eval.o: eval.c
  270. eval.o: form.h
  271. eval.o: handy.h
  272. eval.o: hash.h
  273. eval.o: perl.h
  274. eval.o: regexp.h
  275. eval.o: spat.h
  276. eval.o: stab.h
  277. eval.o: str.h
  278. eval.o: util.h
  279. form.o: EXTERN.h
  280. form.o: arg.h
  281. form.o: array.h
  282. form.o: cmd.h
  283. form.o: config.h
  284. form.o: form.c
  285. form.o: form.h
  286. form.o: handy.h
  287. form.o: hash.h
  288. form.o: perl.h
  289. form.o: regexp.h
  290. form.o: spat.h
  291. form.o: stab.h
  292. form.o: str.h
  293. form.o: util.h
  294. hash.o: EXTERN.h
  295. hash.o: arg.h
  296. hash.o: array.h
  297. hash.o: cmd.h
  298. hash.o: config.h
  299. hash.o: form.h
  300. hash.o: handy.h
  301. hash.o: hash.c
  302. hash.o: hash.h
  303. hash.o: perl.h
  304. hash.o: regexp.h
  305. hash.o: spat.h
  306. hash.o: stab.h
  307. hash.o: str.h
  308. hash.o: util.h
  309. perl.o: EXTERN.h
  310. perl.o: arg.h
  311. perl.o: array.h
  312. perl.o: cmd.h
  313. perl.o: config.h
  314. perl.o: form.h
  315. perl.o: handy.h
  316. perl.o: hash.h
  317. perl.o: patchlevel.h
  318. perl.o: perl.c
  319. perl.o: perl.h
  320. perl.o: perly.h
  321. perl.o: regexp.h
  322. perl.o: spat.h
  323. perl.o: stab.h
  324. perl.o: str.h
  325. perl.o: util.h
  326. regcomp.o: EXTERN.h
  327. regcomp.o: INTERN.h
  328. regcomp.o: arg.h
  329. regcomp.o: array.h
  330. regcomp.o: cmd.h
  331. regcomp.o: config.h
  332. regcomp.o: form.h
  333. regcomp.o: handy.h
  334. regcomp.o: hash.h
  335. regcomp.o: perl.h
  336. regcomp.o: regcomp.c
  337. regcomp.o: regcomp.h
  338. regcomp.o: regexp.h
  339. regcomp.o: spat.h
  340. regcomp.o: stab.h
  341. regcomp.o: str.h
  342. regcomp.o: util.h
  343. regexec.o: EXTERN.h
  344. regexec.o: arg.h
  345. regexec.o: array.h
  346. regexec.o: cmd.h
  347. regexec.o: config.h
  348. regexec.o: form.h
  349. regexec.o: handy.h
  350. regexec.o: hash.h
  351. regexec.o: perl.h
  352. regexec.o: regcomp.h
  353. regexec.o: regexec.c
  354. regexec.o: regexp.h
  355. regexec.o: spat.h
  356. regexec.o: stab.h
  357. regexec.o: str.h
  358. regexec.o: util.h
  359. stab.o: EXTERN.h
  360. stab.o: arg.h
  361. stab.o: array.h
  362. stab.o: cmd.h
  363. stab.o: config.h
  364. stab.o: form.h
  365. stab.o: handy.h
  366. stab.o: hash.h
  367. stab.o: perl.h
  368. stab.o: regexp.h
  369. stab.o: spat.h
  370. stab.o: stab.c
  371. stab.o: stab.h
  372. stab.o: str.h
  373. stab.o: util.h
  374. str.o: EXTERN.h
  375. str.o: arg.h
  376. str.o: array.h
  377. str.o: cmd.h
  378. str.o: config.h
  379. str.o: form.h
  380. str.o: handy.h
  381. str.o: hash.h
  382. str.o: perl.h
  383. str.o: perly.h
  384. str.o: regexp.h
  385. str.o: spat.h
  386. str.o: stab.h
  387. str.o: str.c
  388. str.o: str.h
  389. str.o: util.h
  390. toke.o: EXTERN.h
  391. toke.o: arg.h
  392. toke.o: array.h
  393. toke.o: cmd.h
  394. toke.o: config.h
  395. toke.o: form.h
  396. toke.o: handy.h
  397. toke.o: hash.h
  398. toke.o: perl.h
  399. toke.o: perly.h
  400. toke.o: regexp.h
  401. toke.o: spat.h
  402. toke.o: stab.h
  403. toke.o: str.h
  404. toke.o: toke.c
  405. toke.o: util.h
  406. util.o: EXTERN.h
  407. util.o: arg.h
  408. util.o: array.h
  409. util.o: cmd.h
  410. util.o: config.h
  411. util.o: form.h
  412. util.o: handy.h
  413. util.o: hash.h
  414. util.o: perl.h
  415. util.o: regexp.h
  416. util.o: spat.h
  417. util.o: stab.h
  418. util.o: str.h
  419. util.o: util.c
  420. util.o: util.h
  421. atarist.o: EXTERN.h
  422. ata